#ifndef Q_WIN32_H
#define Q_WIN32_H
#include "stdafx.h"
#include <Windows.h>
#include "ESGL.h"
#define QWINCALL __stdcall

LRESULT WINAPI qWinProc( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam );

class CSceneFbx;
class qWin32 
{
public:
	qWin32( const char* strTitle, int iWidth, int iHeight );
	virtual ~qWin32();

	bool Initilize();

	void MainLoop();

	virtual void DrawFrame();

	virtual void UpdateFrame();

	virtual void KeyUpdate( unsigned char key, int x, int y );

protected:
	
	virtual bool InitWindow( HINSTANCE hInstance, const char * cTitle, int iWidth, int iHeigth );
	
	virtual bool InitVideoDevice();

	virtual bool InitDrawScene();

	virtual void ReleaseVideoDevice();
	
	HWND		m_hWnd;
	char		m_cTitle[NAME_MAX];
	int			m_iWidth;
	int			m_iHeight;
	
	CESGL		m_ESGL;

	CSceneFbx	*m_pSceneFbx;

};

#endif

